package com.jiuqi.ccp.generator.dao.pojo;

import java.io.Serializable;
import java.math.BigDecimal;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

/** 
 *        @hibernate.class
 *         table="CCP_SYS_ROLE"
 *     
*/
public class CcpSysRole implements Serializable {

    /** identifier field */
    private String rlGuid;

    /** nullable persistent field */
    private String rlName;

    /** persistent field */
    private String rlTitle;

    /** nullable persistent field */
    private String rlDescription;

    /** nullable persistent field */
    private String sysOrder;

    /** nullable persistent field */
    private BigDecimal rlReserved1;

    /** nullable persistent field */
    private BigDecimal rlReserved2;

    /** nullable persistent field */
    private String rlReserved3;

    /** nullable persistent field */
    private String rlReserved4;

    /** full constructor */
    public CcpSysRole(String rlGuid, String rlName, String rlTitle, String rlDescription, String sysOrder, BigDecimal rlReserved1, BigDecimal rlReserved2, String rlReserved3, String rlReserved4) {
        this.rlGuid = rlGuid;
        this.rlName = rlName;
        this.rlTitle = rlTitle;
        this.rlDescription = rlDescription;
        this.sysOrder = sysOrder;
        this.rlReserved1 = rlReserved1;
        this.rlReserved2 = rlReserved2;
        this.rlReserved3 = rlReserved3;
        this.rlReserved4 = rlReserved4;
    }

    /** default constructor */
    public CcpSysRole() {
    }

    /** minimal constructor */
    public CcpSysRole(String rlGuid, String rlTitle) {
        this.rlGuid = rlGuid;
        this.rlTitle = rlTitle;
    }

    /** 
     *            @hibernate.id
     *             generator-class="assigned"
     *             type="java.lang.String"
     *             column="RL_GUID"
     *         
     */
    public String getRlGuid() {
        return this.rlGuid;
    }

    public void setRlGuid(String rlGuid) {
        this.rlGuid = rlGuid;
    }

    /** 
     *            @hibernate.property
     *             column="RL_NAME"
     *             length="32"
     *         
     */
    public String getRlName() {
        return this.rlName;
    }

    public void setRlName(String rlName) {
        this.rlName = rlName;
    }

    /** 
     *            @hibernate.property
     *             column="RL_TITLE"
     *             length="150"
     *             not-null="true"
     *         
     */
    public String getRlTitle() {
        return this.rlTitle;
    }

    public void setRlTitle(String rlTitle) {
        this.rlTitle = rlTitle;
    }

    /** 
     *            @hibernate.property
     *             column="RL_DESCRIPTION"
     *             length="250"
     *         
     */
    public String getRlDescription() {
        return this.rlDescription;
    }

    public void setRlDescription(String rlDescription) {
        this.rlDescription = rlDescription;
    }

    /** 
     *            @hibernate.property
     *             column="SYS_ORDER"
     *             length="10"
     *         
     */
    public String getSysOrder() {
        return this.sysOrder;
    }

    public void setSysOrder(String sysOrder) {
        this.sysOrder = sysOrder;
    }

    /** 
     *            @hibernate.property
     *             column="RL_RESERVED1"
     *             length="38"
     *         
     */
    public BigDecimal getRlReserved1() {
        return this.rlReserved1;
    }

    public void setRlReserved1(BigDecimal rlReserved1) {
        this.rlReserved1 = rlReserved1;
    }

    /** 
     *            @hibernate.property
     *             column="RL_RESERVED2"
     *             length="38"
     *         
     */
    public BigDecimal getRlReserved2() {
        return this.rlReserved2;
    }

    public void setRlReserved2(BigDecimal rlReserved2) {
        this.rlReserved2 = rlReserved2;
    }

    /** 
     *            @hibernate.property
     *             column="RL_RESERVED3"
     *             length="20"
     *         
     */
    public String getRlReserved3() {
        return this.rlReserved3;
    }

    public void setRlReserved3(String rlReserved3) {
        this.rlReserved3 = rlReserved3;
    }

    /** 
     *            @hibernate.property
     *             column="RL_RESERVED4"
     *             length="200"
     *         
     */
    public String getRlReserved4() {
        return this.rlReserved4;
    }

    public void setRlReserved4(String rlReserved4) {
        this.rlReserved4 = rlReserved4;
    }

    public String toString() {
        return new ToStringBuilder(this)
            .append("rlGuid", getRlGuid())
            .toString();
    }

    public boolean equals(Object other) {
        if ( !(other instanceof CcpSysRole) ) return false;
        CcpSysRole castOther = (CcpSysRole) other;
        return new EqualsBuilder()
            .append(this.getRlGuid(), castOther.getRlGuid())
            .isEquals();
    }

    public int hashCode() {
        return new HashCodeBuilder()
            .append(getRlGuid())
            .toHashCode();
    }

}
